There is an increasing need for systems and methods of transcoding video bitstreams due to the growing diversity of available multimedia applications, multimedia networks, video displays, and video coding formats. For example, the H.264 video coding format (also referred to herein as the “MPEG-4 Advanced Video Coding (AVC) format”) has provided significant improvements in coding efficiency over earlier video coding standards, and has been widely employed in multimedia applications including, but not limited to, real-time video communications, video streaming, and off-line video transcoding applications. Because multimedia applications such as video streaming generally allow significant delays (e.g., up to 5 seconds or more) to be incorporated into the video transcoding process, some conventional video transcoding systems have employed so-called “look-ahead” approaches to video transcoding. For example, conventional video transcoding systems employing look-ahead approaches can use such delays allowed in video streaming to analyze “future” video frames in input video bitstreams (also referred to herein as the “input bitstreams”), and provide improved bit allocations for the video frames currently being transcoded, thereby enhancing the overall perceptual quality (also referred to herein as a/the “quality of experience” or “QoE”) of transcoded video information, communications, and entertainment (also referred to herein as a/the “transcoded video”) delivered to an end user. In general, for such conventional video transcoding systems employing look-ahead approaches, bit allocations for video frames normally improve as the number of future video frames available for analysis increases.
However, conventional video transcoding systems employing look-ahead approaches to video transcoding have several notable drawbacks. For example, such conventional video transcoding systems employing look-ahead approaches have heretofore not sufficiently taken into account scene characteristics before performing bit allocations for video frames. As a result, such conventional video transcoding systems frequently have difficulty in maintaining a consistent QoE throughout a sequence of video frames (also referred to herein as a/the “video sequence”), without having the QoE for the video sequence vary from video frame to video frame. Conventional video transcoding systems employing look-ahead approaches have also not sufficiently taken into account the local coding complexity of video frames, particularly when encoding bi-directionally predictive, inter-coded types of video frames (also referred to herein as the “B-frames”), resulting in further difficulties in maintaining a consistent QoE throughout a video sequence.
It would therefore be desirable to have improved systems and methods of transcoding video bitstreams that avoid at least some of the drawbacks of the conventional video transcoding systems and methods described above.